package com.groupYLP.CouponNexus.engine.mq.base;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;


/**
 * 消息发送扩展传输对象
 * 用于封装消息发送的相关信息和配置
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public final class BaseSendExtendDTO {

    /**
     * 事件名称
     * 用于标识消息对应的事件
     */
    private String eventName;

    /**
     * 主题
     * 消息发布到的主题，用于消息的分类
     */
    private String topic;

    /**
     * 标签
     * 用于进一步区分主题下的消息类别
     */
    private String tag;

    /**
     * 业务标识
     * 唯一标识业务的关键信息，便于追踪和管理
     */
    private String keys;

    /**
     * 发送消息超时时间
     * 指定消息发送操作等待响应的最大时间
     */
    private Long sentTimeout;

    /**
     * 具体延迟时间
     * 指定消息发送延迟的时间，单位为毫秒
     */
    private Long delayTime;
}

